//package com.mooc.yohoshop.widget;
//
//import android.content.Context;
//import android.graphics.Color;
//import android.graphics.drawable.ColorDrawable;
//import android.text.TextUtils;
//import android.view.Gravity;
//import android.view.LayoutInflater;
//import android.view.View;
//import android.view.ViewGroup;
//import android.widget.Button;
//import android.widget.ImageView;
//import android.widget.PopupWindow;
//import android.widget.TextView;
//
//import com.blankj.utilcode.util.ToastUtils;
//import com.chad.library.adapter.base.BaseQuickAdapter;
//import com.chad.library.adapter.base.listener.OnItemClickListener;
//
//import java.util.HashMap;
//import java.util.List;
//import java.util.Map;
//
//import androidx.recyclerview.widget.RecyclerView;
//
//public class AddCarPopupWindow implements
//        View.OnClickListener,
//        OnItemClickListener {
//
//    private Context ctx;
//    private PopupWindow popupWindow;
//    private View contentView;
//    private Button add_car_btn;
//    private ImageView add_car_cannel_img;
//    private ImageView add_car_img;
//    private TextView add_car_name_tv;
//    private TextView add_car_lefttv;
//    private TextView add_car_numtv;
//    private TextView add_car_righttv;
//    private TextView add_car_num;
//    private RecyclerView add_car_size_rv;
//    private RecyclerView add_car_color_rv;
//    private AddCarCallBack carCallBack;
//    private String goodsid;
//    private String name;
//    private String imgUrl;
//    private int num;
//    private int index = 0;
//    private float shopprice=0;
//    private String userid;
//    private int colorid=0,sizeid = 0;
//    private List<GoodsSizeEntity.Colors> colors;
//    private List<GoodsSizeEntity.Size> size;
//    private ColorAdapter colorAdapter;
//    private SizeAdapter sizeAdapter;
//
//    public AddCarPopupWindow(Context ctx, AddCarCallBack carCallBack){
//        this.ctx = ctx;
//        this.carCallBack = carCallBack;
//        init();
//    }
//
//    public AddCarPopupWindow setDatas(Map<String,Object>map){
//        userid = (String) map.get("userid");
//        shopprice = (float) map.get("shopprice");
//        name = (String) map.get("goodsname");
//        goodsid = (String) map.get("goodsid");
//        imgUrl = (String) map.get("goodsimg");
//        String str = (String) map.get("goodsnum");
//        if (!TextUtils.isEmpty(str)){
//            num = Integer.valueOf(str);
//        }
//        colors = (List<GoodsSizeEntity.Colors>) map.get("goodscolors");
//        size = (List<GoodsSizeEntity.Size>) map.get("goodssize");
//        //设置color以及size默认选中第0条数据
//        GoodsSizeEntity.Colors color = colors.get(0);
//        color.setSel(true);
//        colors.set(0,color);
//        colorid = Integer.valueOf(color.getColor_id());
//        GoodsSizeEntity.Size s = size.get(0);
//        s.setSel(true);
//        size.set(0,s);
//        sizeid = Integer.valueOf(s.getSize_id());
//        return this;
//    }
//
//    private void init(){
//        contentView = LayoutInflater.from(ctx).inflate(R.layout.view_addcar,null);
//        popupWindow = new PopupWindow(contentView, ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.MATCH_PARENT,true);
//        popupWindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
//        popupWindow.setOutsideTouchable(false);
//        add_car_btn = contentView.findViewById(R.id.add_car_btn);
//        add_car_cannel_img = contentView.findViewById(R.id.add_car_cannel_img);
//        add_car_img = contentView.findViewById(R.id.add_car_img);
//        add_car_name_tv = contentView.findViewById(R.id.add_car_name_tv);
//        add_car_lefttv = contentView.findViewById(R.id.add_car_lefttv);
//        add_car_numtv = contentView.findViewById(R.id.add_car_numtv);
//        add_car_righttv = contentView.findViewById(R.id.add_car_righttv);
//        add_car_num = contentView.findViewById(R.id.add_car_num);
//        add_car_size_rv = contentView.findViewById(R.id.add_car_size_rv);
//        add_car_color_rv = contentView.findViewById(R.id.add_car_color_rv);
//        LinearLayoutManager colorManager = new LinearLayoutManager(ctx);
//        colorManager.setOrientation(LinearLayoutManager.HORIZONTAL);
//        add_car_color_rv.setLayoutManager(colorManager);
//        LinearLayoutManager sizeManager = new LinearLayoutManager(ctx);
//        sizeManager.setOrientation(LinearLayoutManager.HORIZONTAL);
//        add_car_size_rv.setLayoutManager(sizeManager);
//        colorAdapter = new ColorAdapter();
//        sizeAdapter = new SizeAdapter();
//        add_car_color_rv.setAdapter(colorAdapter);
//        add_car_size_rv.setAdapter(sizeAdapter);
//        colorAdapter.setOnItemClickListener(this);
//        sizeAdapter.setOnItemClickListener(this);
//        add_car_cannel_img.setOnClickListener(this);
//        add_car_btn.setOnClickListener(this);
//        add_car_lefttv.setOnClickListener(this);
//        add_car_righttv.setOnClickListener(this);
//    }
//
//    public void show(View rootView){
//        refresh();
//        popupWindow.showAtLocation(rootView, Gravity.CENTER,0,0);
//
//    }
//
//    private void refresh(){
//        add_car_name_tv.setText(name);
//        ImageLoadManager.loadImg(imgUrl,add_car_img);
//        colorAdapter.setNewData(colors);
//        sizeAdapter.setNewData(size);
//        add_car_num.setText(""+num);
//        add_car_numtv.setText(""+index);
//    }
//
//    @Override
//    public void onClick(View v) {
//        int id = v.getId();
//        switch (id){
//            case R.id.add_car_btn:
//                if (index==0){
//                    ToastUtils.showShort("请选择要购买的商品数量");
//                    return;
//                }
//                /**{"userid":"1","goodsid":"1","shopname":"hehe","shopcolor":"1",
//                 * "shopsize":"1","shopnum":"1","shopprice":"1"}*/
//                Map<String,String>addMap=new HashMap<>();
//                addMap.put("userid",userid);
//                addMap.put("goodsid",goodsid);
//                addMap.put("shopname",name);
//                addMap.put("shopcolor",""+colorid);
//                addMap.put("shopsize",""+sizeid);
//                addMap.put("shopnum",""+index);
//                addMap.put("shopprice",""+(index*shopprice));
//                carCallBack.addCarValues(addMap);
//                popupWindow.dismiss();
//                break;
//            case R.id.add_car_lefttv:
//                --index;
//                if (index<0)
//                    index=0;
//                add_car_numtv.setText(""+index);
//                add_car_num.setText(""+(num-index));
//                break;
//            case R.id.add_car_righttv:
//                ++index;
//                if (index > num)
//                    index = num;
//                add_car_numtv.setText(""+index);
//                add_car_num.setText(""+(num-index));
//                break;
//            case R.id.add_car_cannel_img:
//                popupWindow.dismiss();
//                break;
//        }
//    }
//
//    @Override
//    public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
//        if (adapter instanceof ColorAdapter){
//            //遍历集合全部数据改为false,具体数据修改为true
//            for (int i = 0;i < colors.size();i ++){
//                GoodsSizeEntity.Colors color = colors.get(i);
//                color.setSel(false);
//                colors.set(i,color);
//            }
//            GoodsSizeEntity.Colors color = colors.get(position);
//            color.setSel(true);
//            colors.set(position,color);
//            colorAdapter.setNewData(colors);
//            colorid = Integer.valueOf(color.getColor_id());
//        }else if (adapter instanceof SizeAdapter){
//            for (int i = 0;i < size.size();i ++){
//                GoodsSizeEntity.Size s = size.get(i);
//                s.setSel(false);
//                size.set(i,s);
//            }
//            GoodsSizeEntity.Size s = size.get(position);
//            s.setSel(true);
//            size.set(position,s);
//            sizeAdapter.setNewData(size);
//            sizeid = Integer.valueOf(s.getSize_id());
//        }
//    }
//
//    //向activity传递数据的回调接口
//    public interface AddCarCallBack{
//        void addCarValues(Map<String,String>map);
//    }
//
//}
